home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / libxml2 / libxml / xpointer.h < prev   
C/C++ Source or Header  |  2006-04-25  |  3KB  |  115 lines

  1. /*
  2.  * Summary: API to handle XML Pointers
  3.  * Description: API to handle XML Pointers
  4.  * Base implementation was made accordingly to
  5.  * W3C Candidate Recommendation 7 June 2000
  6.  * http://www.w3.org/TR/2000/CR-xptr-20000607
  7.  *
  8.  * Added support for the element() scheme described in:
  9.  * W3C Proposed Recommendation 13 November 2002
  10.  * http://www.w3.org/TR/2002/PR-xptr-element-20021113/  
  11.  *
  12.  * Copy: See Copyright for the status of this software.
  13.  *
  14.  * Author: Daniel Veillard
  15.  */
  16.  
  17. #ifndef __XML_XPTR_H__
  18. #define __XML_XPTR_H__
  19.  
  20. #include <libxml/xmlversion.h>
  21.  
  22. #ifdef LIBXML_XPTR_ENABLED
  23.  
  24. #include <libxml/tree.h>
  25. #include <libxml/xpath.h>
  26.  
  27. #ifdef __cplusplus
  28. extern "C" {
  29. #endif
  30.  
  31. /*
  32.  * A Location Set
  33.  */
  34. typedef struct _xmlLocationSet xmlLocationSet;
  35. typedef xmlLocationSet *xmlLocationSetPtr;
  36. struct _xmlLocationSet {
  37.     int locNr;              /* number of locations in the set */
  38.     int locMax;              /* size of the array as allocated */
  39.     xmlXPathObjectPtr *locTab;/* array of locations */
  40. };
  41.  
  42. /*
  43.  * Handling of location sets.
  44.  */
  45.  
  46. XMLPUBFUN xmlLocationSetPtr XMLCALL            
  47.             xmlXPtrLocationSetCreate    (xmlXPathObjectPtr val);
  48. XMLPUBFUN void XMLCALL            
  49.             xmlXPtrFreeLocationSet    (xmlLocationSetPtr obj);
  50. XMLPUBFUN xmlLocationSetPtr XMLCALL    
  51.             xmlXPtrLocationSetMerge    (xmlLocationSetPtr val1,
  52.                          xmlLocationSetPtr val2);
  53. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  54.             xmlXPtrNewRange        (xmlNodePtr start,
  55.                          int startindex,
  56.                          xmlNodePtr end,
  57.                          int endindex);
  58. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  59.             xmlXPtrNewRangePoints    (xmlXPathObjectPtr start,
  60.                          xmlXPathObjectPtr end);
  61. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  62.             xmlXPtrNewRangeNodePoint    (xmlNodePtr start,
  63.                          xmlXPathObjectPtr end);
  64. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  65.             xmlXPtrNewRangePointNode    (xmlXPathObjectPtr start,
  66.                          xmlNodePtr end);
  67. XMLPUBFUN xmlXPathObjectPtr XMLCALL            
  68.             xmlXPtrNewRangeNodes    (xmlNodePtr start,
  69.                          xmlNodePtr end);
  70. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  71.             xmlXPtrNewLocationSetNodes    (xmlNodePtr start,
  72.                          xmlNodePtr end);
  73. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  74.             xmlXPtrNewLocationSetNodeSet(xmlNodeSetPtr set);
  75. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  76.             xmlXPtrNewRangeNodeObject    (xmlNodePtr start,
  77.                          xmlXPathObjectPtr end);
  78. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  79.             xmlXPtrNewCollapsedRange    (xmlNodePtr start);
  80. XMLPUBFUN void XMLCALL            
  81.             xmlXPtrLocationSetAdd    (xmlLocationSetPtr cur,
  82.                          xmlXPathObjectPtr val);
  83. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  84.             xmlXPtrWrapLocationSet    (xmlLocationSetPtr val);
  85. XMLPUBFUN void XMLCALL            
  86.             xmlXPtrLocationSetDel    (xmlLocationSetPtr cur,
  87.                          xmlXPathObjectPtr val);
  88. XMLPUBFUN void XMLCALL            
  89.             xmlXPtrLocationSetRemove    (xmlLocationSetPtr cur,
  90.                          int val);
  91.  
  92. /*
  93.  * Functions.
  94.  */
  95. XMLPUBFUN xmlXPathContextPtr XMLCALL    
  96.             xmlXPtrNewContext        (xmlDocPtr doc,
  97.                          xmlNodePtr here,
  98.                          xmlNodePtr origin);
  99. XMLPUBFUN xmlXPathObjectPtr XMLCALL    
  100.             xmlXPtrEval            (const xmlChar *str,
  101.                          xmlXPathContextPtr ctx);
  102. XMLPUBFUN void XMLCALL                        
  103.             xmlXPtrRangeToFunction    (xmlXPathParserContextPtr ctxt,
  104.                                 int nargs);
  105. XMLPUBFUN xmlNodePtr XMLCALL        
  106.             xmlXPtrBuildNodeList    (xmlXPathObjectPtr obj);
  107. XMLPUBFUN void XMLCALL        
  108.             xmlXPtrEvalRangePredicate    (xmlXPathParserContextPtr ctxt);
  109. #ifdef __cplusplus
  110. }
  111. #endif
  112.  
  113. #endif /* LIBXML_XPTR_ENABLED */
  114. #endif /* __XML_XPTR_H__ */
  115.